package com.leyou.search.pojo;

import lombok.Data;
import org.springframework.data.elasticsearch.annotations.Document;
import org.springframework.data.elasticsearch.annotations.Field;
import org.springframework.data.elasticsearch.annotations.FieldType;

import javax.persistence.Id;
import java.util.Date;
import java.util.Map;
import java.util.Set;

/**
 * @Author: Rose
 * @Date: 2021/4/2 23:34
 * @description ${description}
 * @versi on: 1.0.0
 */
@Data
@Document(indexName = "goods", type = "docs", shards = 1, replicas = 0)
public class Goods {


    /***
     *
     *  spuId
     *
     */
    @Id
    private Long id;

    /**
     * 所有需要被搜索的信息， 包含标题， 分类， 甚至品牌
     */
    @Field(type = FieldType.Text, analyzer = "ik_max_word")
    private String all;

    /***
     *  卖点
     *
     */
    @Field(type = FieldType.Keyword, index = false)
    private String subTitle;

    /**
     * 品牌id
     */
    private Long brandId;

    /**
     * 1 级分类
     */
    private Long cid1;
    /**
     * 2 级分类
     */
    private Long cid2;
    /**
     * 3级分类
     */
    private Long cid3;

    /**
     * spu 创建时间
     */
    private Date creatTime;

    /**
     * 价格
     */
    private Set<Long> price;

    /***
     *
     *  sku信息的json 结构
     */
    @Field(type = FieldType.Keyword, index = false)
    private String sku;

    /***
     *  可搜索的规格参数， key 是参数名， 值是参数值
     *
     */
    private Map<String, Object> specs;
}
